UUebView ドキュメント(途中)


概要

Standalone WebView for Unity なこれのドキュメントを書かねば。

UUebView

https://github.com/sassembla/UUebView-freeversion


このページを草稿とする。



使用できるWebコンテンツについて

HTML一択。


実際にデモで使っているhtmlのサンプルはこんな感じ。

https://github.com/sassembla/UUebView-freeversion/blob/master/Assets/Sample/Resources/items.html

CSS、JSは一切効かないどころかパースできない気がする。

そのうち無視するようにするかな。

UUebViewの制約として、Unityの持っているAnimationやらイベント、uGUIレイアウトの機構でだいたいのことはできるので

Unityゲーム内でWebView代替としてAppアプデ無しに動かすに足ると判断したため、JS、CSSはサポートされない。



HTMLのルール

・HTMLタグはここにあるタグのぶんは適当に使える。

https://github.com/sassembla/UUebView-freeversion/tree/master/Assets/InformationResources/Resources/Views/Default


・DOCTYPE以外のタグはすべて小文字で書く。

なんかhtml5wayらしいんでそれで。パースも楽になるんでそれで。

http://www.xml.vc/HTML5/kiso/rule.html

これの、HTML構文例に出てくるようなのをサポートしている。


・DOCTYPEはなくても良い

・DOCTYPEでサポートされているのは、独自に作った uuebview タイプのみ。

hrefをつけて独自定義タグの設定ファイルをwebかresourcesかAssetBundleから読み出すことができる。

サンプル items.html ではresourcesから読みだしている。


・title, headは完全に無視される

・bodyはあってもなくてもいい


・使えるAttributeは以下

id(string)

要素にidを振ることができる。


src(string)

要素が画像系であれば、画像を展開する


href(string)

要素をボタン化した場合、イベントのパラメータとして使われる。


align(left, center, right)

要素の整列を行う。


また、UUebView独自で以下のAttributeを使ってイベントを制御することができる。

button(true, false)

要素をボタンとして扱い、クリック時にイベントが着火するようになる。idがあればイベント着火時にパラメータとして渡ってくる。


listen(string[, params string])

パラメータに他のタグのidを記述できる。そのidが振られた要素がイベントを発効した場合にhiddenを切り替える。id要素は,で箇条書きできる(ようにしたい)


hidden(true, false)

要素の表示/非表示を扱う。falseを指定すると初レンダリング時は非表示となる。



Viewの取得

UUebViewComponent.Getなんちゃら(ドキュメント書き途中)



ハンドラ

複数のイベントハンドラがIUUebViewEventHandler型で定義してある。

OnLoadedとか。(ドキュメント書き途中)


イベントの発効

画像、リンクはUnityのGUIとしてのクリック機能を持たせることができる。

タグにbutton=‘true‘ とか書けばいい。



Viewへの要素の追加、削除

でっち上げのTreeQueryLanguageを使って要素を編集することができる。

構文

タグ/子タグ:インデックス数値/目標タグ

e,g,

body/child:0/img


などのように書くと、

<body>

<child>

something

<img src=“”/>

</child>

<child>

<img src=“”/>

</child>

</body>


太字の要素にヒットする。

これqueryなの?っていうと疑問が出てくるんだけどまあほら、暫定だから。



末尾に追加するなら(ドキュメント書き途中)

特定のタグの要素の末尾に追加するなら(ドキュメント書き途中)

削除する場合(ドキュメント書き途中)